package com.icinfo.cloud.provider.punish.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotEmpty;
import java.time.LocalDate;

/**
 * 描述：补正更正简易程序文书 对应的DTO类.<br>
 *
 * @author shishengyao
 * @description
 * @date 2023/2/20
 */
@Data
public class DocumentReplenishAmendSaveDto {

    /**
     * 来源类型 1:简易处罚 2:办案直通车
     */
    @NotEmpty(message = "来源类型不能为空")
    private String sourceType;

    /**
     * 案件id
     */
    private String caseId;
    /**
     * 文书Id
     */
    @NotEmpty(message = "文书Id不能为空")
    private String documentId;
    /**
     * 当事人名称
     */
    @NotEmpty(message = "当事人名称不能为空")
    @Length(min = 1,max = 100)
    private String partyName;

    /**
     * 文书抬头办案机构标准名称
     */
    @NotEmpty(message = "办案机构标准名称不能为空")
    @Length(min = 1,max = 100)
    private String orgStandardName;
    /**
     * 文书标题
     */
    @NotEmpty(message = "文书标题不能为空")
    @Length(min = 1,max = 30)
    private String documentTitle;
    /**
     * 送达日期
     */
    @JsonFormat(pattern = "yyyy年M月d日",timezone = "GMT+8")
    private String sendDate;

    /**
     * 文书名称和文号
     */
    @NotEmpty(message = "文书名称和文号不能为空")
    private String documentNameAndNumber;
    /**
     * 补正/更正内容
     */
    @NotEmpty(message = "补正/更正内容不能为空")
    @Length(min = 1,max = 500)
    private String amendContent;
    /**
     * 补正/更正种类说明
     */
    @NotEmpty(message = "补正/更正种类说明不能为空")
    @Length(min = 1,max = 100)
    private String amendKindDesc;
    /**
     * 补正/更正前内容说明
     */
    @NotEmpty(message = "补正/更正后不能为空")
    @Length(min = 1,max = 100)
    private String  beforeAmendDesc;
    /**
     * 补正/更正前内容
     */
    @NotEmpty(message = "补正/更正后不能为空")
    @Length(min = 1,max = 500)
    private String  beforeAmendContent;
    /**
     * 补正/更正后说明
     */
    @NotEmpty(message = "补正/更正后不能为空")
    @Length(min = 1,max = 100)
    private String afterAmendDesc;
    /**
     * 补正/更正后的内容
     */
    @NotEmpty(message = "补正/更正后的内容不能为空")
    @Length(min = 1,max = 500)
    private  String afterAmendContent;

    /**
     * 签章位置-办案机构标准名称
     */
    @NotEmpty(message = "办案机构标准名称不能为空")
    @Length(min = 1,max = 100)
    private String orgStandardNameSealLocation;
    /**
     * 文书签章日期
     */
    @DateTimeFormat(pattern ="yyyy年M月d日" )
    @JsonFormat(pattern = "yyyy年M月d日",timezone = "GMT+8")
    private String documentSealDate;

    /**
     * 补正/更正id （修改时使用）
     */
    private String replenishAmendId;
    /**
     * 文号后端使用
     */
    private String documentNumber;
}
